Feat/knowledge cli#85
Merged
Merged
Conversation
- 在 CLI 命令中添加 knowledgeSearch 和 knowledgeChat 两个新命令 - 新增 knowledge 搜索命令,支持多模态图像检索及对话历史上下文传递 - 新增 knowledge 问答命令,支持多轮消息流式回答及多模态输入 - 在核心客户端库(core)中添加对应的 API 端点和类型定义 - 知识库检索接口 retrieve 标注为弃用,推荐使用 search 命令替代 - 更新 kscli 主程序入口,接入新命令并兼容旧命令 - 补充 e2e 测试覆盖 knowledge search 和 knowledge chat 的各类边界与流程 - 更新文档及命令示例,实现使用说明同步最新功能 - 增加测试配置,改善 E2E 测试环境与超时设置
- 将 knowledge-studio-cli 版本更新至 1.4.0 - 在发布脚本中新增 knowledge-studio-cli 构建步骤 - 更新包依赖顺序,加入 knowledge-studio-cli 包 - 确保知识库检索相关 CLI 正确构建发布
- 新增发布工作流 publish-knowledge.yml,支持 stable 和 channel 模式发布含 knowledge 的包 - runCheck 函数增加 knowledge 参数,支持同时构建和验证 knowledge-studio-cli 包 - publish-stable 和 publish-channel 脚本支持传入 knowledge 参数,调整发布的包列表 - packAndScan 函数支持指定发布包列表,增强灵活性 - 扩展 packages 模块,新增 ALL_PACKAGES 常量包含所有包(基础包加 knowledge-studio-cli) - loadAndValidate
- 删除独立的 publish-knowledge.yml 工作流 - 在 publish.yml 中新增 package 选择,支持 bailian-cli 和 knowledge-studio-cli - 发布脚本根据 package 参数传递 --knowledge 标志 - 修改发布任务并发组以包含 package 参数,避免冲突 - 调整发布稳定版与频道版任务名称显示 package 信息 - 精简发布依赖顺序注释,去除冗余部分 - 优化构建步骤,仅构建 bailian-cli-core 包 - 更新包管理代码,整合知识库相关包到统一发布流程
- 统一调整所有命令参考文档中的表格格式,使用简洁markdown表格语法替换旧格式 - 规范所有命令详情中的字段表头格式,保持一致性 - 在索引中添加全局参数列表,列出所有命令通用的全局标志选项 - 修正配置键名称中的小错误(例如base_url写法统一) - 优化目录索引部分格式,更加规范排列和对齐 - 未改变命令内容及描述,保证文档信息一致性
- 扩展聊天消息内容类型,支持文本和图片URL的数组形式 - 处理 --image 参数,将图片URL作为多模态内容附加到最后一条用户消息 - 若无用户消息且指定图片URL,自动创建空用户消息以承载图片内容 - 禁止同时使用内嵌图片内容和 --image 参数,避免冲突 - 将知识搜索接口请求的图片参数字段 image_list 重命名为 images - 单元测试覆盖多模态内容及图片数组行为验证 - 优化消息解析,支持JSON结构化消息和 role:content 格式 - 更新API类型声明,明确多模态消息结构与字段类型
- 在包列表中新增 runtime 包配置 - 在包列表中新增 commands 包配置 - 确保新包路径和名称正确设置
- 移除chat命令的多种输出模式测试(JSON、文本、流模式) - 删除多轮对话上下文感知回答的测试用例 - 删除chat命令无效agent_id时的容错测试 - 移除search命令的JSON和文本模式搜索测试 - 删除带查询历史的搜索功能测试 - 删除search命令无效agent_id时的错误处理测试 - 清理与测试相关的类型定义和辅助函数调用
- 新增 `bl knowledge search` 命令,支持语义检索及多模态检索参数 - 新增 `bl knowledge chat` 命令,支持知识库 SSE 流式问答及多轮历史对话 - 在 `bailian-cli-core` 中添加相应的知识 API 类型和端点支持 - `kscli` 新增 `search` 和 `chat` 两个命令,`retrieve` 标记为废弃 - 更新 `kscli` README,调整主推命令并标记 `retrieve` 废弃 - 补充完善 E2E 测试覆盖检索与问答功能的多种用例 - 修正若干缺少必要参数时的 CLI 行为,确保打印帮助并正常退出 - 升级各相关包版本至 1.6.0,更新 CHANGELOG 及相关文档说明
- 从 publish-stable.mjs 中删除了未使用的 findPackage 导入 - 仅保留 ALL_PACKAGES 和 PACKAGES 的导入 - 提升代码的清晰度和维护性
- 增加日志输出,详细打印CI环境中的关键变量值 - 检查并打印本地配置文件内容及其API Key长度 - 引入新的辅助函数,支持更全面的环境就绪状态检测 - 提升对DashScope和Console等E2E测试环境的诊断能力 - 便于排查CI中DASHSCOPE_API_KEY及相关环境变量的来源和状态
- 引入 isBailianE2EEnabled 方法用于调试 - 在 worker 进程中打印关键环境变量 DASHSCOPE_API_KEY - 打印 isDashScopeE2EReady 与 isBailianE2EEnabled 的返回结果 - 方便排查文件上传相关E2E测试环境状态问题
- 添加对用户主目录下配置文件路径的打印和存在性检查 - 打印环境变量 HOME 及 BAILIAN_CONFIG_DIR 的值 - 调用 readConfigFile 并打印返回内容及 api_key 相关信息 - 捕获并打印 readConfigFile 的异常信息 - 如果配置文件存在,读取并打印其原始内容 - 保留现有环境变量和功能状态的调试输出
- 从 file-upload.e2e.test.ts 中删除无用的调试日志代码 - global-setup.ts 中清理环境变量调试打印信息 - knowledge-chat.e2e.test.ts 和 knowledge-search.e2e.test.ts 中去除多余的环境变量传入 - knowledge.e2e.test.ts 中调整 runCli 调用,统一简化测试参数 - commands/knowledge 下 chat.ts 与 search.ts 增加 skipDefaultApiKeySetup 标记,避免默认 API Key 初始化
- 在 knowledge chat 相关测试中加入 BAILIAN_WORKSPACE_ID 为空的环境变量模拟 - 在 knowledge search 相关测试中加入 BAILIAN_WORKSPACE_ID 为空的环境变量模拟 - 将 knowledge 相关测试中的部分环境变量由 undefined 改为空字符串以更准确模拟环境场景 - 保持测试逻辑不变,确保非零退出码及错误提示的正确性
- 根据isDashScopeE2EReady函数动态跳过错误场景测试集 - 修改测试注释明确标注环境变量可能泄露风险 - 将BAILIAN_CONFIG_DIR改为固定临时目录路径以稳定测试 - 在知识检索命令新增dry-run支持,绕过凭证直接使用API-KEY路径执行请求体输出
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
增加知识库的检索和问答能力